package org.tgcloud.group.repository;

import org.apache.ibatis.annotations.Param;
import org.tgcloud.group.entity.SysLabelValue;
import org.tgcloud.group.web.controller.dto.sys.SysLabelValueListDTO;

import java.util.List;

public interface SysLabelValueMapper {
    int deleteByPrimaryKey(Integer id);

    int insert(SysLabelValue record);

    int insertSelective(SysLabelValue record);

    SysLabelValue selectByPrimaryKey(Integer id);

    int updateByPrimaryKeySelective(SysLabelValue record);

    int updateByPrimaryKey(SysLabelValue record);

    List<SysLabelValueListDTO> selectListBySysLabelId(@Param("sysLabelId") Integer sysLabelId,
                                                      @Param("keyword") String keyword,@Param("pId") Integer pId);
    List<SysLabelValueListDTO> selectAllGroup(@Param("targetId") Integer targetId);
    List<SysLabelValueListDTO> selectAllArea();


    SysLabelValue selectValueBySysIdAndName(@Param("sysLabelId") Integer sysLabelId, @Param("sysValueName") String sysValueName);

    SysLabelValue selectValueBySysIdAndNameAndId(@Param("sysLabelId") Integer sysLabelId, @Param("sysValueName") String sysValueName,
                                                 @Param("valueId") Integer valueId);

    String selectValueBySysIdAndReadOne(@Param("sysLabelId") Integer sysLabelId);

    String selectValueByIds(@Param("ids") String[] split);

    int updateDelStatusByIds(@Param("split") String[] split);
}
